문제 설명
영어 알파벳으로 이루어진 문자열 str
이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.
제한사항
- 1 ≤
str
의 길이 ≤ 20str
은 알파벳으로 이루어진 문자열입니다.
입출력 예
입력 #1
출력 #1
영어 알파벳으로 이루어진 문자열 str
이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.
str
의 길이 ≤ 20
str
은 알파벳으로 이루어진 문자열입니다.입력 #1
출력 #1
toUpperCase()
: 대문자로 변환toLowerCase()
: 소문자로 변환reduce()
를 사용해서 풀었어요.
[...str]
을 통해 문자열을 배열로 만들고, reduce()
를 통해 각 문자를 순회하면서 대문자인지 소문자인지 확인하고, 그에 맞게 변환해주었어요.
전개 구문 ...
을 사용해서 배열이나 문자열을 개별 요소로 분리할 수 있어요.
배열에 있는 요소를 배열 밖으로 꺼내어 사용할 때 유용하게 사용할 수 있어요.
배열의 각 요소에 대해 주어진 리듀서(reducer) 함수를 실행하고, 하나의 결과값을 반환해요.
callback
함수는 네 개의 인자를 가져요.
accumulator
(acc, prev) : 콜백의 반환값을 누적currentValue
(cur, curr) : 처리할 현재 요소currentIndex
(idx, index) : 처리할 현재 요소의 인덱스 (optional)array
(src) : reduce()
를 호출한 배열 (optional)initialValue
를 제공한 경우, acc
는 initialValue
와 같고, cur
는 배열의 첫 번째 요소와 같아요.
initialValue
를 제공하지 않은 경우, acc
는 배열의 첫 번째 요소와 같고, cur
는 두 번째 요소와 같아요.
map vs reduce
map()
은 반환값이 같은 길이의 배열이고,reduce()
는 반환값이 무엇이든 상관없어요. 주어진 조건에 따라map()
과reduce()
또는 다른 메서드를 사용해야 해요.